import kotlin.reflect.full.declaredMembers

object Test {
}

fun main(args: Array<String>) {
    println(com.zelix.um::toString)
    val clazz = com.zelix.um::class.java

    val um = com.zelix.um()

    val declaredFields = clazz.declaredFields
    declaredFields.forEach { field ->
        field.isAccessible = true
//        println(field.genericType)

        val vaule = field.get(um)
        if (vaule is Array<*> ) {
            vaule.forEach {
                println("${field.name} : $it")
            }
        } else {
            println("${field.name} : $vaule [${field.genericType}]")
        }
    }
}